home *** CD-ROM | disk | FTP | other *** search
Java Source | 1996-09-19 | 3.4 KB | 173 lines | [TEXT/CWIE] |
- import java.awt.*;
-
- public class eventCanvas extends Canvas
- {
- boolean hasFocus;
-
- eventCanvas( int width, int height )
- {
- setBackground( Color.yellow );
- resize( width, height );
-
- hasFocus = false;
- }
-
- public boolean mouseUp( Event e, int x, int y )
- {
- eventHandler.reportEvent( "mouseUp" );
- return true;
- }
-
- public boolean mouseDown( Event e, int x, int y )
- {
- eventHandler.reportEvent( "mouseDown" );
- return true;
- }
-
- public boolean mouseDrag( Event e, int x, int y )
- {
- eventHandler.reportEvent( "mouseDrag" );
- return true;
- }
-
- public boolean mouseEnter( Event e, int x, int y )
- {
- eventHandler.reportEvent( "mouseEnter" );
- return true;
- }
-
- public boolean mouseExit( Event e, int x, int y )
- {
- eventHandler.reportEvent( "mouseExit" );
- return true;
- }
-
- public boolean keyDown( Event e, int key )
- {
- String eventString = "keyDown: ";
- String keyName, modifierName;
-
- modifierName = getModifierName( e );
- if ( modifierName != null )
- eventString += modifierName;
-
- keyName = getKeyName( key );
-
- if ( keyName != null )
- eventString += keyName;
- else if (( key >= 32 ) && ( key <= 127 ))
- eventString += new Character( (char)key ).toString();
- else
- eventString += key;
-
- eventHandler.reportEvent( eventString );
-
- return true;
- }
-
- public String getModifierName( Event e )
- {
- if ( e.controlDown() )
- return( "Control-" );
- if ( e.metaDown() )
- return( "Meta-" );
- if ( e.shiftDown() )
- return( "Shift-" );
-
- return null;
- }
-
- public String getKeyName( int key )
- {
- switch ( key )
- {
- case Event.F1: return "F1";
- case Event.F2: return "F2";
- case Event.F3: return "F3";
- case Event.F4: return "F4";
- case Event.F5: return "F5";
- case Event.F6: return "F6";
- case Event.F7: return "F7";
- case Event.F8: return "F8";
- case Event.F9: return "F9";
- case Event.F10: return "F10";
- case Event.F11: return "F11";
- case Event.F12: return "F12";
- case Event.HOME: return "HOME";
- case Event.END: return "END";
- case Event.LEFT: return "Left Arrow";
- case Event.RIGHT: return "Right Arrow";
- case Event.UP: return "Up Arrow";
- case Event.DOWN: return "DownArrow";
- case Event.PGUP: return "Page Up";
- case Event.PGDN: return "Page Down";
- }
-
- return null;
- }
-
- public boolean keyUp( Event e, int key )
- {
- eventHandler.reportEvent( "keyUp" );
-
- return true;
- }
-
- public boolean gotFocus(Event e, Object what)
- {
- hasFocus = true;
- eventHandler.reportEvent( "gotFocus" );
- repaint();
-
- return true;
- }
-
- public boolean lostFocus(Event e, Object what)
- {
- hasFocus = false;
- eventHandler.reportEvent( "lostFocus" );
- repaint();
-
- return true;
- }
-
- public void paint( Graphics g )
- {
- Rectangle r;
-
- r = bounds();
- g = getGraphics();
-
- if ( hasFocus )
- g.setColor( Color.red );
- else
- g.setColor( Color.yellow );
-
- g.drawRect( 0, 0, r.width-1, r.height-1 );
- g.drawRect( 1, 1, r.width-3, r.height-3 );
- }
- }
-
- public class eventHandler extends java.applet.Applet
- {
- eventCanvas eCanvas;
- static TextArea tArea;
-
- public void init()
- {
- add( new Label( "Click and type in this Canvas:" ) );
-
- eCanvas = new eventCanvas( 200, 100 );
- add( eCanvas );
-
- add( new Label( "Here's a list of canvas events:" ) );
-
- tArea = new TextArea( 10, 30 );
- add( tArea );
- }
-
- public static void reportEvent( String eventString )
- {
- tArea.appendText( eventString + "\r" );
- }
- }